<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>MFixedPoint: mn::MFixedPoint Namespace Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">MFixedPoint
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('namespacemn_1_1MFixedPoint.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#nested-classes">Classes</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">mn::MFixedPoint Namespace Reference</div>  </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespacemn_1_1MFixedPoint_1_1detail"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint_1_1detail.html">detail</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32s.html">Fp32s</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">The template argument p in all of the following functions refers to the fixed point precision (e.g. p = 8 gives 24.8 fixed point functions). Contains mathematical operator overloading. Doesn't have modulus (%) overloading.  <a href="classmn_1_1MFixedPoint_1_1Fp32s.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp64f.html">Fp64f</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">64-bit fixed-point library.  <a href="classmn_1_1MFixedPoint_1_1Fp64f.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp64s.html">Fp64s</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fixed-point, 64-bit, slow (slower than <a class="el" href="classmn_1_1MFixedPoint_1_1Fp64f.html" title="64-bit fixed-point library. ">Fp64f</a>), but more powerful, library.  <a href="classmn_1_1MFixedPoint_1_1Fp64s.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmn_1_1MFixedPoint_1_1Port.html">Port</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a5f8f94c6e7eca6ba8233ac7f0da880eb"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#a5f8f94c6e7eca6ba8233ac7f0da880eb">fixrsqrt16</a> (int32_t a)</td></tr>
<tr class="separator:a5f8f94c6e7eca6ba8233ac7f0da880eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae4a8dc561a9ea6b45837015139604367"><td class="memItemLeft" align="right" valign="top">static int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#ae4a8dc561a9ea6b45837015139604367">fast_div16</a> (int32_t a, int32_t b)</td></tr>
<tr class="separator:ae4a8dc561a9ea6b45837015139604367"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a67dbcc8f8829616f0928b35320c51d04"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#a67dbcc8f8829616f0928b35320c51d04">fixsqrt16</a> (int32_t a)</td></tr>
<tr class="memdesc:a67dbcc8f8829616f0928b35320c51d04"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculates squareroot.  <a href="#a67dbcc8f8829616f0928b35320c51d04">More...</a><br /></td></tr>
<tr class="separator:a67dbcc8f8829616f0928b35320c51d04"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b75474a75a4a836d66f94cfc06c78e4"><td class="memTemplParams" colspan="2">template&lt;uint8_t q&gt; </td></tr>
<tr class="memitem:a9b75474a75a4a836d66f94cfc06c78e4"><td class="memTemplItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#a9b75474a75a4a836d66f94cfc06c78e4">FixMulF</a> (int32_t a, int32_t b)</td></tr>
<tr class="memdesc:a9b75474a75a4a836d66f94cfc06c78e4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Perform a fixed point multiplication without a 64-bit intermediate result.  <a href="#a9b75474a75a4a836d66f94cfc06c78e4">More...</a><br /></td></tr>
<tr class="separator:a9b75474a75a4a836d66f94cfc06c78e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a49674142efd47e1cea03efeea69e8a61"><td class="memTemplParams" colspan="2">template&lt;uint8_t q&gt; </td></tr>
<tr class="memitem:a49674142efd47e1cea03efeea69e8a61"><td class="memTemplItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#a49674142efd47e1cea03efeea69e8a61">FixMul</a> (int32_t a, int32_t b)</td></tr>
<tr class="memdesc:a49674142efd47e1cea03efeea69e8a61"><td class="mdescLeft">&#160;</td><td class="mdescRight">Perform a fixed point multiplication using a 64-bit intermediate result to prevent intermediary overflow problems.  <a href="#a49674142efd47e1cea03efeea69e8a61">More...</a><br /></td></tr>
<tr class="separator:a49674142efd47e1cea03efeea69e8a61"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3cf08fe133a71c8b95ab83e2268a3fec"><td class="memTemplParams" colspan="2">template&lt;uint8_t q&gt; </td></tr>
<tr class="memitem:a3cf08fe133a71c8b95ab83e2268a3fec"><td class="memTemplItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#a3cf08fe133a71c8b95ab83e2268a3fec">fixdiv</a> (int32_t a, int32_t b)</td></tr>
<tr class="separator:a3cf08fe133a71c8b95ab83e2268a3fec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ace853bfeeb42f244da813d2f43746db7"><td class="memTemplParams" colspan="2">template&lt;uint8_t q&gt; </td></tr>
<tr class="memitem:ace853bfeeb42f244da813d2f43746db7"><td class="memTemplItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#ace853bfeeb42f244da813d2f43746db7">fixinv</a> (int32_t a)</td></tr>
<tr class="separator:ace853bfeeb42f244da813d2f43746db7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afc387041f75e32ff11275ec42e7fe3dc"><td class="memTemplParams" colspan="2">template&lt;uint8_t q&gt; </td></tr>
<tr class="memitem:afc387041f75e32ff11275ec42e7fe3dc"><td class="memTemplItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#afc387041f75e32ff11275ec42e7fe3dc">FloatToRawFix32</a> (float f)</td></tr>
<tr class="memdesc:afc387041f75e32ff11275ec42e7fe3dc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts from float to a raw fixed-point number.  <a href="#afc387041f75e32ff11275ec42e7fe3dc">More...</a><br /></td></tr>
<tr class="separator:afc387041f75e32ff11275ec42e7fe3dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab9447d89d1eaa05037d45ea17e228aae"><td class="memTemplParams" colspan="2">template&lt;uint8_t q&gt; </td></tr>
<tr class="memitem:ab9447d89d1eaa05037d45ea17e228aae"><td class="memTemplItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#ab9447d89d1eaa05037d45ea17e228aae">DoubleToRawFix32</a> (double f)</td></tr>
<tr class="memdesc:ab9447d89d1eaa05037d45ea17e228aae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts from double to a raw fixed-point number.  <a href="#ab9447d89d1eaa05037d45ea17e228aae">More...</a><br /></td></tr>
<tr class="separator:ab9447d89d1eaa05037d45ea17e228aae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abe2435ffb4d1d6dac5744bb08d42df25"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#abe2435ffb4d1d6dac5744bb08d42df25">fixcos16</a> (int32_t a)</td></tr>
<tr class="separator:abe2435ffb4d1d6dac5744bb08d42df25"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8e0a611dd25e1fd08fa518c32584832a"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#a8e0a611dd25e1fd08fa518c32584832a">fixsin16</a> (int32_t a)</td></tr>
<tr class="separator:a8e0a611dd25e1fd08fa518c32584832a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8188180be1c1527c3fc63a0b05e3dce0"><td class="memTemplParams" colspan="2">template&lt;uint8_t q&gt; </td></tr>
<tr class="memitem:a8188180be1c1527c3fc63a0b05e3dce0"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#a8188180be1c1527c3fc63a0b05e3dce0">operator+</a> (int32_t a, <a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt; b)</td></tr>
<tr class="separator:a8188180be1c1527c3fc63a0b05e3dce0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad6ad2a1e25452e5bb6d7e293e8f6d2b4"><td class="memTemplParams" colspan="2">template&lt;uint8_t q&gt; </td></tr>
<tr class="memitem:ad6ad2a1e25452e5bb6d7e293e8f6d2b4"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#ad6ad2a1e25452e5bb6d7e293e8f6d2b4">operator-</a> (int32_t a, <a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt; b)</td></tr>
<tr class="separator:ad6ad2a1e25452e5bb6d7e293e8f6d2b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a727b9bab906298211c1279da02b6380b"><td class="memTemplParams" colspan="2">template&lt;uint8_t q&gt; </td></tr>
<tr class="memitem:a727b9bab906298211c1279da02b6380b"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#a727b9bab906298211c1279da02b6380b">operator*</a> (int32_t a, <a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt; b)</td></tr>
<tr class="separator:a727b9bab906298211c1279da02b6380b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5c522098c1940793343893ebd3bcf586"><td class="memTemplParams" colspan="2">template&lt;uint8_t q&gt; </td></tr>
<tr class="memitem:a5c522098c1940793343893ebd3bcf586"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#a5c522098c1940793343893ebd3bcf586">operator/</a> (int32_t a, <a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt; b)</td></tr>
<tr class="separator:a5c522098c1940793343893ebd3bcf586"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3e7e5abbc1fb4d2aecdb5cd98b58b66f"><td class="memTemplParams" colspan="2">template&lt;uint8_t q&gt; </td></tr>
<tr class="memitem:a3e7e5abbc1fb4d2aecdb5cd98b58b66f"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#a3e7e5abbc1fb4d2aecdb5cd98b58b66f">sin</a> (<a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt; a)</td></tr>
<tr class="separator:a3e7e5abbc1fb4d2aecdb5cd98b58b66f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:add093362bc33ef75dc54a91a2170be5d"><td class="memTemplParams" colspan="2">template&lt;uint8_t q&gt; </td></tr>
<tr class="memitem:add093362bc33ef75dc54a91a2170be5d"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#add093362bc33ef75dc54a91a2170be5d">cos</a> (<a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt; a)</td></tr>
<tr class="separator:add093362bc33ef75dc54a91a2170be5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a05d7ba6997d3295966a3f272a27e45ef"><td class="memTemplParams" colspan="2">template&lt;uint8_t q&gt; </td></tr>
<tr class="memitem:a05d7ba6997d3295966a3f272a27e45ef"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#a05d7ba6997d3295966a3f272a27e45ef">sqrt</a> (<a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt; a)</td></tr>
<tr class="separator:a05d7ba6997d3295966a3f272a27e45ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6177ed7234c6e6d213c9a92af254b483"><td class="memTemplParams" colspan="2">template&lt;uint8_t q&gt; </td></tr>
<tr class="memitem:a6177ed7234c6e6d213c9a92af254b483"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#a6177ed7234c6e6d213c9a92af254b483">rsqrt</a> (<a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt; a)</td></tr>
<tr class="separator:a6177ed7234c6e6d213c9a92af254b483"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad33466d848879bec156b9a50b1265d66"><td class="memTemplParams" colspan="2">template&lt;uint8_t q&gt; </td></tr>
<tr class="memitem:ad33466d848879bec156b9a50b1265d66"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#ad33466d848879bec156b9a50b1265d66">inv</a> (<a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt; a)</td></tr>
<tr class="separator:ad33466d848879bec156b9a50b1265d66"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a418a81c2aff49891f3c4629f39c93ca1"><td class="memTemplParams" colspan="2">template&lt;uint8_t q&gt; </td></tr>
<tr class="memitem:a418a81c2aff49891f3c4629f39c93ca1"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#a418a81c2aff49891f3c4629f39c93ca1">abs</a> (<a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt; a)</td></tr>
<tr class="separator:a418a81c2aff49891f3c4629f39c93ca1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad68285858b99c8018f83a0745ea65b0c"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:ad68285858b99c8018f83a0745ea65b0c"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; 16 &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#ad68285858b99c8018f83a0745ea65b0c">sin</a> (<a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; 16 &gt; a)</td></tr>
<tr class="separator:ad68285858b99c8018f83a0745ea65b0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad63a51578943b11d73d329df904397d3"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:ad63a51578943b11d73d329df904397d3"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; 16 &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#ad63a51578943b11d73d329df904397d3">cos</a> (<a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; 16 &gt; a)</td></tr>
<tr class="separator:ad63a51578943b11d73d329df904397d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3acec45599038730e03e2b4167300dad"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:a3acec45599038730e03e2b4167300dad"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; 16 &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#a3acec45599038730e03e2b4167300dad">sqrt</a> (<a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; 16 &gt; a)</td></tr>
<tr class="separator:a3acec45599038730e03e2b4167300dad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0af48d61efa0fa7b024d71b2d11a487f"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:a0af48d61efa0fa7b024d71b2d11a487f"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; 16 &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#a0af48d61efa0fa7b024d71b2d11a487f">rsqrt</a> (<a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; 16 &gt; a)</td></tr>
<tr class="separator:a0af48d61efa0fa7b024d71b2d11a487f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a559bfd7ffc3764ef6698ef2acf54c68f"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:a559bfd7ffc3764ef6698ef2acf54c68f"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; 16 &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#a559bfd7ffc3764ef6698ef2acf54c68f">inv</a> (<a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; 16 &gt; a)</td></tr>
<tr class="separator:a559bfd7ffc3764ef6698ef2acf54c68f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad80e535e250e60ef55c60be2a6f93c49"><td class="memTemplParams" colspan="2">template&lt;uint8_t q&gt; </td></tr>
<tr class="memitem:ad80e535e250e60ef55c60be2a6f93c49"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#ad80e535e250e60ef55c60be2a6f93c49">multiply_accumulate</a> (int32_t count, const <a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt; *a, const <a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt; *b)</td></tr>
<tr class="separator:ad80e535e250e60ef55c60be2a6f93c49"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0988ce50b74b3a3d29afee1b2847d468"><td class="memTemplParams" colspan="2">template&lt;uint8_t p&gt; </td></tr>
<tr class="memitem:a0988ce50b74b3a3d29afee1b2847d468"><td class="memTemplItemLeft" align="right" valign="top">int64_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#a0988ce50b74b3a3d29afee1b2847d468">FixMulF</a> (int64_t a, int64_t b)</td></tr>
<tr class="memdesc:a0988ce50b74b3a3d29afee1b2847d468"><td class="mdescLeft">&#160;</td><td class="mdescRight">Perform a fixed point multiplication without a 128-bit intermediate result.  <a href="#a0988ce50b74b3a3d29afee1b2847d468">More...</a><br /></td></tr>
<tr class="separator:a0988ce50b74b3a3d29afee1b2847d468"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af205e513ccbc971f90a7eb5af09fb810"><td class="memTemplParams" colspan="2">template&lt;uint8_t p&gt; </td></tr>
<tr class="memitem:af205e513ccbc971f90a7eb5af09fb810"><td class="memTemplItemLeft" align="right" valign="top">int64_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#af205e513ccbc971f90a7eb5af09fb810">FixDiv</a> (int64_t a, int64_t b)</td></tr>
<tr class="memdesc:af205e513ccbc971f90a7eb5af09fb810"><td class="mdescLeft">&#160;</td><td class="mdescRight">Perform a fixed point division without a 128-bit intermediate result.  <a href="#af205e513ccbc971f90a7eb5af09fb810">More...</a><br /></td></tr>
<tr class="separator:af205e513ccbc971f90a7eb5af09fb810"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae248a47e795ebb30852522eb5bf556f9"><td class="memTemplParams" colspan="2">template&lt;uint8_t p&gt; </td></tr>
<tr class="memitem:ae248a47e795ebb30852522eb5bf556f9"><td class="memTemplItemLeft" align="right" valign="top">int64_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#ae248a47e795ebb30852522eb5bf556f9">FloatToRawFix64</a> (float f)</td></tr>
<tr class="memdesc:ae248a47e795ebb30852522eb5bf556f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts from float to a raw fixed-point number.  <a href="#ae248a47e795ebb30852522eb5bf556f9">More...</a><br /></td></tr>
<tr class="separator:ae248a47e795ebb30852522eb5bf556f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a350beaed6c200882a3c194ef6983b65a"><td class="memTemplParams" colspan="2">template&lt;uint8_t p&gt; </td></tr>
<tr class="memitem:a350beaed6c200882a3c194ef6983b65a"><td class="memTemplItemLeft" align="right" valign="top">int64_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacemn_1_1MFixedPoint.html#a350beaed6c200882a3c194ef6983b65a">DoubleToRawFix64</a> (double f)</td></tr>
<tr class="memdesc:a350beaed6c200882a3c194ef6983b65a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts from float to a raw fixed-point number.  <a href="#a350beaed6c200882a3c194ef6983b65a">More...</a><br /></td></tr>
<tr class="separator:a350beaed6c200882a3c194ef6983b65a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Function Documentation</h2>
<a id="a418a81c2aff49891f3c4629f39c93ca1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a418a81c2aff49891f3c4629f39c93ca1">&#9670;&nbsp;</a></span>abs()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;uint8_t q&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt;q&gt; mn::MFixedPoint::abs </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt;&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="Fp32f_8hpp_source.html#l00531">531</a> of file <a class="el" href="Fp32f_8hpp_source.html">Fp32f.hpp</a>.</p>

<p class="reference">References <a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html#a6ca9d9930dfcb06d530259b1da668359">mn::MFixedPoint::Fp32f&lt; q &gt;::rawVal</a>.</p>

</div>
</div>
<a id="add093362bc33ef75dc54a91a2170be5d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#add093362bc33ef75dc54a91a2170be5d">&#9670;&nbsp;</a></span>cos() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;uint8_t q&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt;q&gt; mn::MFixedPoint::cos </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt;&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="reference">Referenced by <a class="el" href="namespacemn_1_1MFixedPoint.html#a5c522098c1940793343893ebd3bcf586">operator/()</a>.</p>
<div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="namespacemn_1_1MFixedPoint_add093362bc33ef75dc54a91a2170be5d_icgraph.svg" width="390" height="38"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>

</div>
</div>
<a id="ad63a51578943b11d73d329df904397d3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad63a51578943b11d73d329df904397d3">&#9670;&nbsp;</a></span>cos() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt;16&gt; mn::MFixedPoint::cos </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; 16 &gt;&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="Fp32f_8hpp_source.html#l00549">549</a> of file <a class="el" href="Fp32f_8hpp_source.html">Fp32f.hpp</a>.</p>

<p class="reference">References <a class="el" href="namespacemn_1_1MFixedPoint.html#abe2435ffb4d1d6dac5744bb08d42df25">fixcos16()</a>, and <a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html#a6ca9d9930dfcb06d530259b1da668359">mn::MFixedPoint::Fp32f&lt; q &gt;::rawVal</a>.</p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="namespacemn_1_1MFixedPoint_ad63a51578943b11d73d329df904397d3_cgraph.svg" width="388" height="38"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>

</div>
</div>
<a id="ab9447d89d1eaa05037d45ea17e228aae"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab9447d89d1eaa05037d45ea17e228aae">&#9670;&nbsp;</a></span>DoubleToRawFix32()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;uint8_t q&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">int32_t mn::MFixedPoint::DoubleToRawFix32 </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>f</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Converts from double to a raw fixed-point number. </p>
<p>Do not write "myFpNum = FloatToRawFix32()"! This function outputs a raw number, so you would have to use the syntax "myFpNum.rawVal = FloatToRawFix32()". </p><dl class="section warning"><dt>Warning</dt><dd>Slow! </dd></dl>

<p class="definition">Definition at line <a class="el" href="Fp32f_8hpp_source.html#l00194">194</a> of file <a class="el" href="Fp32f_8hpp_source.html">Fp32f.hpp</a>.</p>

<p class="reference">References <a class="el" href="namespacemn_1_1MFixedPoint.html#abe2435ffb4d1d6dac5744bb08d42df25">fixcos16()</a>, <a class="el" href="namespacemn_1_1MFixedPoint.html#a5f8f94c6e7eca6ba8233ac7f0da880eb">fixrsqrt16()</a>, <a class="el" href="namespacemn_1_1MFixedPoint.html#a8e0a611dd25e1fd08fa518c32584832a">fixsin16()</a>, and <a class="el" href="namespacemn_1_1MFixedPoint.html#a67dbcc8f8829616f0928b35320c51d04">fixsqrt16()</a>.</p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="namespacemn_1_1MFixedPoint_ab9447d89d1eaa05037d45ea17e228aae_cgraph.svg" width="635" height="198"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>

</div>
</div>
<a id="a350beaed6c200882a3c194ef6983b65a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a350beaed6c200882a3c194ef6983b65a">&#9670;&nbsp;</a></span>DoubleToRawFix64()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;uint8_t p&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">int64_t mn::MFixedPoint::DoubleToRawFix64 </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>f</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Converts from float to a raw fixed-point number. </p>
<p>Do not write "myFpNum = DoubleToRawFix64()"! This function outputs a raw number, so you would have to use the syntax "myFpNum.rawVal = DoubleToRawFix64()". </p><dl class="section warning"><dt>Warning</dt><dd>Slow! </dd></dl>

<p class="definition">Definition at line <a class="el" href="Fp64f_8hpp_source.html#l00063">63</a> of file <a class="el" href="Fp64f_8hpp_source.html">Fp64f.hpp</a>.</p>

</div>
</div>
<a id="ae4a8dc561a9ea6b45837015139604367"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae4a8dc561a9ea6b45837015139604367">&#9670;&nbsp;</a></span>fast_div16()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static int32_t mn::MFixedPoint::fast_div16 </td>
          <td>(</td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>b</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="Fp32f_8cpp_source.html#l00107">107</a> of file <a class="el" href="Fp32f_8cpp_source.html">Fp32f.cpp</a>.</p>

<p class="reference">Referenced by <a class="el" href="namespacemn_1_1MFixedPoint.html#a67dbcc8f8829616f0928b35320c51d04">fixsqrt16()</a>.</p>
<div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="namespacemn_1_1MFixedPoint_ae4a8dc561a9ea6b45837015139604367_icgraph.svg" width="622" height="104"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>

</div>
</div>
<a id="abe2435ffb4d1d6dac5744bb08d42df25"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abe2435ffb4d1d6dac5744bb08d42df25">&#9670;&nbsp;</a></span>fixcos16()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t mn::MFixedPoint::fixcos16 </td>
          <td>(</td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="reference">Referenced by <a class="el" href="namespacemn_1_1MFixedPoint.html#ad63a51578943b11d73d329df904397d3">cos()</a>, and <a class="el" href="namespacemn_1_1MFixedPoint.html#ab9447d89d1eaa05037d45ea17e228aae">DoubleToRawFix32()</a>.</p>
<div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="namespacemn_1_1MFixedPoint_abe2435ffb4d1d6dac5744bb08d42df25_icgraph.svg" width="423" height="104"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>

</div>
</div>
<a id="af205e513ccbc971f90a7eb5af09fb810"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af205e513ccbc971f90a7eb5af09fb810">&#9670;&nbsp;</a></span>FixDiv()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;uint8_t p&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int64_t mn::MFixedPoint::FixDiv </td>
          <td>(</td>
          <td class="paramtype">int64_t&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int64_t&#160;</td>
          <td class="paramname"><em>b</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Perform a fixed point division without a 128-bit intermediate result. </p>
<p>No loss of precision since shift is done before division. </p><dl class="section warning"><dt>Warning</dt><dd>This is fast but beware of intermediary overflow! </dd></dl>

<p class="definition">Definition at line <a class="el" href="Fp64f_8hpp_source.html#l00041">41</a> of file <a class="el" href="Fp64f_8hpp_source.html">Fp64f.hpp</a>.</p>

</div>
</div>
<a id="a3cf08fe133a71c8b95ab83e2268a3fec"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3cf08fe133a71c8b95ab83e2268a3fec">&#9670;&nbsp;</a></span>fixdiv()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;uint8_t q&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int32_t mn::MFixedPoint::fixdiv </td>
          <td>(</td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>b</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="Fp32f_8hpp_source.html#l00088">88</a> of file <a class="el" href="Fp32f_8hpp_source.html">Fp32f.hpp</a>.</p>

</div>
</div>
<a id="ace853bfeeb42f244da813d2f43746db7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ace853bfeeb42f244da813d2f43746db7">&#9670;&nbsp;</a></span>fixinv()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;uint8_t q&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int32_t mn::MFixedPoint::fixinv </td>
          <td>(</td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="Fp32f_8hpp_source.html#l00145">145</a> of file <a class="el" href="Fp32f_8hpp_source.html">Fp32f.hpp</a>.</p>

<p class="reference">References <a class="el" href="namespacemn_1_1MFixedPoint_1_1detail.html#a23c916cea5a4b151e69bff7e828610f2">mn::MFixedPoint::detail::CountLeadingZeros()</a>, and <a class="el" href="namespacemn_1_1MFixedPoint.html#a49674142efd47e1cea03efeea69e8a61">FixMul()</a>.</p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="namespacemn_1_1MFixedPoint_ace853bfeeb42f244da813d2f43746db7_cgraph.svg" width="387" height="104"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>

</div>
</div>
<a id="a49674142efd47e1cea03efeea69e8a61"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a49674142efd47e1cea03efeea69e8a61">&#9670;&nbsp;</a></span>FixMul()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;uint8_t q&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int32_t mn::MFixedPoint::FixMul </td>
          <td>(</td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>b</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Perform a fixed point multiplication using a 64-bit intermediate result to prevent intermediary overflow problems. </p>
<dl class="section note"><dt>Note</dt><dd>Slower than <a class="el" href="namespacemn_1_1MFixedPoint.html#a9b75474a75a4a836d66f94cfc06c78e4" title="Perform a fixed point multiplication without a 64-bit intermediate result. ">Fp32f::FixMulF()</a> </dd></dl>

<p class="definition">Definition at line <a class="el" href="Fp32f_8hpp_source.html#l00081">81</a> of file <a class="el" href="Fp32f_8hpp_source.html">Fp32f.hpp</a>.</p>

<p class="reference">Referenced by <a class="el" href="namespacemn_1_1MFixedPoint.html#ace853bfeeb42f244da813d2f43746db7">fixinv()</a>.</p>
<div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="namespacemn_1_1MFixedPoint_a49674142efd47e1cea03efeea69e8a61_icgraph.svg" width="387" height="38"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>

</div>
</div>
<a id="a0988ce50b74b3a3d29afee1b2847d468"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0988ce50b74b3a3d29afee1b2847d468">&#9670;&nbsp;</a></span>FixMulF() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;uint8_t p&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int64_t mn::MFixedPoint::FixMulF </td>
          <td>(</td>
          <td class="paramtype">int64_t&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int64_t&#160;</td>
          <td class="paramname"><em>b</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Perform a fixed point multiplication without a 128-bit intermediate result. </p>
<dl class="section warning"><dt>Warning</dt><dd>This is fast but beware of intermediary overflow! </dd></dl>

<p class="definition">Definition at line <a class="el" href="Fp64f_8hpp_source.html#l00030">30</a> of file <a class="el" href="Fp64f_8hpp_source.html">Fp64f.hpp</a>.</p>

</div>
</div>
<a id="a9b75474a75a4a836d66f94cfc06c78e4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9b75474a75a4a836d66f94cfc06c78e4">&#9670;&nbsp;</a></span>FixMulF() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;uint8_t q&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int32_t mn::MFixedPoint::FixMulF </td>
          <td>(</td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>b</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Perform a fixed point multiplication without a 64-bit intermediate result. </p>
<dl class="section note"><dt>Note</dt><dd>This is fast but beware of intermediary overflow! </dd></dl>

<p class="definition">Definition at line <a class="el" href="Fp32f_8hpp_source.html#l00072">72</a> of file <a class="el" href="Fp32f_8hpp_source.html">Fp32f.hpp</a>.</p>

</div>
</div>
<a id="a5f8f94c6e7eca6ba8233ac7f0da880eb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5f8f94c6e7eca6ba8233ac7f0da880eb">&#9670;&nbsp;</a></span>fixrsqrt16()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t mn::MFixedPoint::fixrsqrt16 </td>
          <td>(</td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="Fp32f_8cpp_source.html#l00073">73</a> of file <a class="el" href="Fp32f_8cpp_source.html">Fp32f.cpp</a>.</p>

<p class="reference">References <a class="el" href="namespacemn_1_1MFixedPoint_1_1detail.html#a23c916cea5a4b151e69bff7e828610f2">mn::MFixedPoint::detail::CountLeadingZeros()</a>.</p>

<p class="reference">Referenced by <a class="el" href="namespacemn_1_1MFixedPoint.html#ab9447d89d1eaa05037d45ea17e228aae">DoubleToRawFix32()</a>, and <a class="el" href="namespacemn_1_1MFixedPoint.html#a0af48d61efa0fa7b024d71b2d11a487f">rsqrt()</a>.</p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="namespacemn_1_1MFixedPoint_a5f8f94c6e7eca6ba8233ac7f0da880eb_cgraph.svg" width="402" height="52"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
<div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="namespacemn_1_1MFixedPoint_a5f8f94c6e7eca6ba8233ac7f0da880eb_icgraph.svg" width="427" height="104"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>

</div>
</div>
<a id="a8e0a611dd25e1fd08fa518c32584832a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8e0a611dd25e1fd08fa518c32584832a">&#9670;&nbsp;</a></span>fixsin16()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t mn::MFixedPoint::fixsin16 </td>
          <td>(</td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="reference">Referenced by <a class="el" href="namespacemn_1_1MFixedPoint.html#ab9447d89d1eaa05037d45ea17e228aae">DoubleToRawFix32()</a>, and <a class="el" href="namespacemn_1_1MFixedPoint.html#ad68285858b99c8018f83a0745ea65b0c">sin()</a>.</p>
<div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="namespacemn_1_1MFixedPoint_a8e0a611dd25e1fd08fa518c32584832a_icgraph.svg" width="419" height="104"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>

</div>
</div>
<a id="a67dbcc8f8829616f0928b35320c51d04"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a67dbcc8f8829616f0928b35320c51d04">&#9670;&nbsp;</a></span>fixsqrt16()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t mn::MFixedPoint::fixsqrt16 </td>
          <td>(</td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Calculates squareroot. </p>

<p class="definition">Definition at line <a class="el" href="Fp32f_8cpp_source.html#l00117">117</a> of file <a class="el" href="Fp32f_8cpp_source.html">Fp32f.cpp</a>.</p>

<p class="reference">References <a class="el" href="namespacemn_1_1MFixedPoint.html#ae4a8dc561a9ea6b45837015139604367">fast_div16()</a>.</p>

<p class="reference">Referenced by <a class="el" href="namespacemn_1_1MFixedPoint.html#ab9447d89d1eaa05037d45ea17e228aae">DoubleToRawFix32()</a>, and <a class="el" href="namespacemn_1_1MFixedPoint.html#a3acec45599038730e03e2b4167300dad">sqrt()</a>.</p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="namespacemn_1_1MFixedPoint_a67dbcc8f8829616f0928b35320c51d04_cgraph.svg" width="388" height="52"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
<div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="namespacemn_1_1MFixedPoint_a67dbcc8f8829616f0928b35320c51d04_icgraph.svg" width="423" height="104"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>

</div>
</div>
<a id="afc387041f75e32ff11275ec42e7fe3dc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afc387041f75e32ff11275ec42e7fe3dc">&#9670;&nbsp;</a></span>FloatToRawFix32()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;uint8_t q&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">int32_t mn::MFixedPoint::FloatToRawFix32 </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>f</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Converts from float to a raw fixed-point number. </p>
<p>Do not write "myFpNum = FloatToRawFix32()"! This function outputs a raw number, so you would have to use the syntax "myFpNum.rawVal = FloatToRawFix32()". </p><dl class="section warning"><dt>Warning</dt><dd>Slow! </dd></dl>

<p class="definition">Definition at line <a class="el" href="Fp32f_8hpp_source.html#l00184">184</a> of file <a class="el" href="Fp32f_8hpp_source.html">Fp32f.hpp</a>.</p>

</div>
</div>
<a id="ae248a47e795ebb30852522eb5bf556f9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae248a47e795ebb30852522eb5bf556f9">&#9670;&nbsp;</a></span>FloatToRawFix64()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;uint8_t p&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">int64_t mn::MFixedPoint::FloatToRawFix64 </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>f</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Converts from float to a raw fixed-point number. </p>
<p>Do not write "myFpNum = FloatToRawFix64()"! This function outputs a raw number, so you would have to use the syntax "myFpNum.rawVal = FloatToRawFix64()". </p><dl class="section warning"><dt>Warning</dt><dd>Slow! </dd></dl>

<p class="definition">Definition at line <a class="el" href="Fp64f_8hpp_source.html#l00053">53</a> of file <a class="el" href="Fp64f_8hpp_source.html">Fp64f.hpp</a>.</p>

</div>
</div>
<a id="ad33466d848879bec156b9a50b1265d66"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad33466d848879bec156b9a50b1265d66">&#9670;&nbsp;</a></span>inv() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;uint8_t q&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt;q&gt; mn::MFixedPoint::inv </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt;&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="reference">Referenced by <a class="el" href="namespacemn_1_1MFixedPoint.html#a5c522098c1940793343893ebd3bcf586">operator/()</a>.</p>
<div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="namespacemn_1_1MFixedPoint_ad33466d848879bec156b9a50b1265d66_icgraph.svg" width="386" height="38"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>

</div>
</div>
<a id="a559bfd7ffc3764ef6698ef2acf54c68f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a559bfd7ffc3764ef6698ef2acf54c68f">&#9670;&nbsp;</a></span>inv() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt;16&gt; mn::MFixedPoint::inv </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; 16 &gt;&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="Fp32f_8hpp_source.html#l00574">574</a> of file <a class="el" href="Fp32f_8hpp_source.html">Fp32f.hpp</a>.</p>

<p class="reference">References <a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html#a6ca9d9930dfcb06d530259b1da668359">mn::MFixedPoint::Fp32f&lt; q &gt;::rawVal</a>.</p>

</div>
</div>
<a id="ad80e535e250e60ef55c60be2a6f93c49"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad80e535e250e60ef55c60be2a6f93c49">&#9670;&nbsp;</a></span>multiply_accumulate()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;uint8_t q&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt;q&gt; mn::MFixedPoint::multiply_accumulate </td>
          <td>(</td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt; *&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt; *&#160;</td>
          <td class="paramname"><em>b</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="Fp32f_8hpp_source.html#l00583">583</a> of file <a class="el" href="Fp32f_8hpp_source.html">Fp32f.hpp</a>.</p>

<p class="reference">References <a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html#a6ca9d9930dfcb06d530259b1da668359">mn::MFixedPoint::Fp32f&lt; q &gt;::rawVal</a>.</p>

</div>
</div>
<a id="a727b9bab906298211c1279da02b6380b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a727b9bab906298211c1279da02b6380b">&#9670;&nbsp;</a></span>operator*()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;uint8_t q&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt;q&gt; mn::MFixedPoint::operator* </td>
          <td>(</td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt;&#160;</td>
          <td class="paramname"><em>b</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section note"><dt>Note</dt><dd>Assumes integer has the same precision as <a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a> </dd></dl>

<p class="definition">Definition at line <a class="el" href="Fp32f_8hpp_source.html#l00501">501</a> of file <a class="el" href="Fp32f_8hpp_source.html">Fp32f.hpp</a>.</p>

</div>
</div>
<a id="a8188180be1c1527c3fc63a0b05e3dce0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8188180be1c1527c3fc63a0b05e3dce0">&#9670;&nbsp;</a></span>operator+()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;uint8_t q&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt;q&gt; mn::MFixedPoint::operator+ </td>
          <td>(</td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt;&#160;</td>
          <td class="paramname"><em>b</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section note"><dt>Note</dt><dd>Assumes integer has the same precision as <a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a> </dd></dl>

<p class="definition">Definition at line <a class="el" href="Fp32f_8hpp_source.html#l00487">487</a> of file <a class="el" href="Fp32f_8hpp_source.html">Fp32f.hpp</a>.</p>

</div>
</div>
<a id="ad6ad2a1e25452e5bb6d7e293e8f6d2b4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad6ad2a1e25452e5bb6d7e293e8f6d2b4">&#9670;&nbsp;</a></span>operator-()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;uint8_t q&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt;q&gt; mn::MFixedPoint::operator- </td>
          <td>(</td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt;&#160;</td>
          <td class="paramname"><em>b</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section note"><dt>Note</dt><dd>Assumes integer has the same precision as <a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a> </dd></dl>

<p class="definition">Definition at line <a class="el" href="Fp32f_8hpp_source.html#l00494">494</a> of file <a class="el" href="Fp32f_8hpp_source.html">Fp32f.hpp</a>.</p>

</div>
</div>
<a id="a5c522098c1940793343893ebd3bcf586"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5c522098c1940793343893ebd3bcf586">&#9670;&nbsp;</a></span>operator/()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;uint8_t q&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt;q&gt; mn::MFixedPoint::operator/ </td>
          <td>(</td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt;&#160;</td>
          <td class="paramname"><em>b</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="Fp32f_8hpp_source.html#l00505">505</a> of file <a class="el" href="Fp32f_8hpp_source.html">Fp32f.hpp</a>.</p>

<p class="reference">References <a class="el" href="namespacemn_1_1MFixedPoint.html#add093362bc33ef75dc54a91a2170be5d">cos()</a>, <a class="el" href="namespacemn_1_1MFixedPoint.html#ad33466d848879bec156b9a50b1265d66">inv()</a>, <a class="el" href="namespacemn_1_1MFixedPoint.html#a6177ed7234c6e6d213c9a92af254b483">rsqrt()</a>, <a class="el" href="namespacemn_1_1MFixedPoint.html#a3e7e5abbc1fb4d2aecdb5cd98b58b66f">sin()</a>, and <a class="el" href="namespacemn_1_1MFixedPoint.html#a05d7ba6997d3295966a3f272a27e45ef">sqrt()</a>.</p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="namespacemn_1_1MFixedPoint_a5c522098c1940793343893ebd3bcf586_cgraph.svg" width="394" height="240"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>

</div>
</div>
<a id="a6177ed7234c6e6d213c9a92af254b483"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6177ed7234c6e6d213c9a92af254b483">&#9670;&nbsp;</a></span>rsqrt() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;uint8_t q&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt;q&gt; mn::MFixedPoint::rsqrt </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt;&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="reference">Referenced by <a class="el" href="namespacemn_1_1MFixedPoint.html#a5c522098c1940793343893ebd3bcf586">operator/()</a>.</p>
<div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="namespacemn_1_1MFixedPoint_a6177ed7234c6e6d213c9a92af254b483_icgraph.svg" width="394" height="38"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>

</div>
</div>
<a id="a0af48d61efa0fa7b024d71b2d11a487f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0af48d61efa0fa7b024d71b2d11a487f">&#9670;&nbsp;</a></span>rsqrt() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt;16&gt; mn::MFixedPoint::rsqrt </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; 16 &gt;&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="Fp32f_8hpp_source.html#l00566">566</a> of file <a class="el" href="Fp32f_8hpp_source.html">Fp32f.hpp</a>.</p>

<p class="reference">References <a class="el" href="namespacemn_1_1MFixedPoint.html#a5f8f94c6e7eca6ba8233ac7f0da880eb">fixrsqrt16()</a>, and <a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html#a6ca9d9930dfcb06d530259b1da668359">mn::MFixedPoint::Fp32f&lt; q &gt;::rawVal</a>.</p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="namespacemn_1_1MFixedPoint_a0af48d61efa0fa7b024d71b2d11a487f_cgraph.svg" width="604" height="52"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>

</div>
</div>
<a id="a3e7e5abbc1fb4d2aecdb5cd98b58b66f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3e7e5abbc1fb4d2aecdb5cd98b58b66f">&#9670;&nbsp;</a></span>sin() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;uint8_t q&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt;q&gt; mn::MFixedPoint::sin </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt;&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="reference">Referenced by <a class="el" href="namespacemn_1_1MFixedPoint.html#a5c522098c1940793343893ebd3bcf586">operator/()</a>.</p>
<div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="namespacemn_1_1MFixedPoint_a3e7e5abbc1fb4d2aecdb5cd98b58b66f_icgraph.svg" width="386" height="38"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>

</div>
</div>
<a id="ad68285858b99c8018f83a0745ea65b0c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad68285858b99c8018f83a0745ea65b0c">&#9670;&nbsp;</a></span>sin() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt;16&gt; mn::MFixedPoint::sin </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; 16 &gt;&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="Fp32f_8hpp_source.html#l00541">541</a> of file <a class="el" href="Fp32f_8hpp_source.html">Fp32f.hpp</a>.</p>

<p class="reference">References <a class="el" href="namespacemn_1_1MFixedPoint.html#a8e0a611dd25e1fd08fa518c32584832a">fixsin16()</a>, and <a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html#a6ca9d9930dfcb06d530259b1da668359">mn::MFixedPoint::Fp32f&lt; q &gt;::rawVal</a>.</p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="namespacemn_1_1MFixedPoint_ad68285858b99c8018f83a0745ea65b0c_cgraph.svg" width="380" height="38"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>

</div>
</div>
<a id="a05d7ba6997d3295966a3f272a27e45ef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a05d7ba6997d3295966a3f272a27e45ef">&#9670;&nbsp;</a></span>sqrt() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;uint8_t q&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt;q&gt; mn::MFixedPoint::sqrt </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; q &gt;&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="reference">Referenced by <a class="el" href="namespacemn_1_1MFixedPoint.html#a5c522098c1940793343893ebd3bcf586">operator/()</a>.</p>
<div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="namespacemn_1_1MFixedPoint_a05d7ba6997d3295966a3f272a27e45ef_icgraph.svg" width="390" height="38"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>

</div>
</div>
<a id="a3acec45599038730e03e2b4167300dad"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3acec45599038730e03e2b4167300dad">&#9670;&nbsp;</a></span>sqrt() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt;16&gt; mn::MFixedPoint::sqrt </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html">Fp32f</a>&lt; 16 &gt;&#160;</td>
          <td class="paramname"><em>a</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="Fp32f_8hpp_source.html#l00558">558</a> of file <a class="el" href="Fp32f_8hpp_source.html">Fp32f.hpp</a>.</p>

<p class="reference">References <a class="el" href="namespacemn_1_1MFixedPoint.html#a67dbcc8f8829616f0928b35320c51d04">fixsqrt16()</a>, and <a class="el" href="classmn_1_1MFixedPoint_1_1Fp32f.html#a6ca9d9930dfcb06d530259b1da668359">mn::MFixedPoint::Fp32f&lt; q &gt;::rawVal</a>.</p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="namespacemn_1_1MFixedPoint_a3acec45599038730e03e2b4167300dad_cgraph.svg" width="587" height="52"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="namespacemn.html">mn</a></li><li class="navelem"><a class="el" href="namespacemn_1_1MFixedPoint.html">MFixedPoint</a></li>
    <li class="footer">Generated on Wed Dec 13 2017 13:34:44 for MFixedPoint by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
  </ul>
</div>
</body>
</html>
